/**
 * @Project : algorithm-learning
 * @Author : Ruoyu Wang
 * @User : Momenta
 * @DateTime : 2024/4/16 18:59
 */

//小红打怪，有n个怪物，每个怪物的血量为ai，只有攻击力大于等于怪物的血量才可以击杀怪物，
//并且击杀后攻击力增加ai/5（向下取整），小红可以选择攻击哪个怪物。
//并且小红有一瓶力量药剂，每瓶药剂可以让攻击力翻倍。
//请帮小红选择合适的时机使用药剂，使得最后攻击力最大。小红不必击条所有怪物。
//
//输入描述
//  第一行输入两个整数n和x，表示怪物的数量和初始的攻击力。
//  第二行输入n个整数ai。表示每个怪物的血量
//  1≤n≤10^5
//  1≤ai,x≤10^9
//输出描述
//  输出一个整数，表示最后的最大攻击力。
//
//示例1
//输入
//3 10
//10 12 15
//输出
//31
//说明
//  先击杀前两个怪物，攻击力增加4，攻击力为14。
//  然后使用药剂，攻击力变为 28。
//  击杀最后一个怪物，攻击力增加3，攻击力为31.

#include <cstdio>
#include <iostream>
#include <algorithm>
#include <vector>

using namespace std;

int main() {
    int n, x;
    scanf("%d%d", &n, &x);
    long long res = x;
    vector<int> a;
    for (int i = 0; i < n; i++) {
        int k;
        scanf("%d", &k);
        a.push_back(k);
    }
    sort(a.begin(), a.end());
    int tag = 0;
    for (int i = 0; i < n; i++) {
        if (res >= a[i]) {
            res += a[i] / 5;
        } else {
            if (tag > 0) break;
            res *= 2;
            tag++;
            i--;
        }
    }
    if (tag == 0) res *= 2;
    printf("%lld", res);
    return 0;
}